<?php

namespace app\admin\controller;

use think\Controller;
use think\Loader;
use think\Request;
use think\response\View;

class Show extends Controller
{
    /**
     * 显示资源列表
     *
     * @return \think\Response
     */

    public function index()
    {
        //列表展示
        $data = \app\admin\model\Show::getIndexInfo();
        $this->assign('data', $data);
        return view();
    }

    /**
     * 显示创建资源表单页.
     *
     * @return \think\Response
     */
    public function create()
    {
        return view();
//        return json(['code' => 200, 'msg' => 'success', 'data'=>'create']);
    }

    /**
     * 保存新建的资源
     *
     * @param \think\Request $request
     * @return \think\Response
     */

    public function save(Request $request)
    {
//        添加数据
        $data = $request->post();
        $file = request()->file('good_img');
//        $data['good_img'] = $file;
//        验证文件   移动到框架应用根目录/public/uploads/ 目录下
        if ($file) {
            $info = $file->validate(['size' => 1024 * 1024 * 5, 'ext' => 'jpeg,jpg,png,gif'])->move(ROOT_PATH . 'public' . DS . 'uploads');
            if ($info) {
//                拼接路径信息
                $filePath = DS . 'uploads' . DS . $info->getSaveName();
                $data['good_img'] = $filePath;
            } else {
                //上传失败获得错误信息
                $this->error($file->getError(), '/admin/Show/create');
            }
        }
        //验证数据非空
        $validate = Loader::validate('Goods');
        if (!$validate->scene('goods')->check($data)) {
            $this->error($validate->getError());
        }
//        书写并调用模型，添加入库
        $res = \app\admin\model\Show::addData($data);
        if ($res) {
            $this->success('添加成功', '/admin/Show/index');
        } else {
            $this->error('添加失败', '/admin/Show/create');
        }

    }

    /**
     * 显示指定的资源
     *
     * @param int $id
     * @return \think\Response
     */
    public function read($id)
    {
        return json(['code' => 200, 'msg' => 'success', 'data' => 'read']);
    }

    /**
     * 显示编辑资源表单页.
     *
     * @param int $id
     * @return \think\Response
     */
    public function edit($id)
    {
        return json(['code' => 200, 'msg' => 'success', 'data' => 'edit']);
    }

    /**
     * 保存更新的资源
     *
     * @param \think\Request $request
     * @param int $id
     * @return \think\Response
     */
//    审核
    public function upd($id)
    {
        $data = input();
        $res = \app\admin\model\Show::edit($id);
        $this->assign('res', $res);
        return view();
    }

    public function update(Request $request, $id)
    {
        $data = input();


//        return json(['code' => 200, 'msg' => 'success', 'data' => 'update']);
    }

    /**
     * 删除指定资源
     *
     * @param int $id
     * @return \think\Response
     */
    public function delete($id)
    {
        //软删除
        $res = \app\admin\model\Show::del($id);
        if ($res) {
            $this->success('删除成功，正在跳转', '/admin/Show/index');
        } else {
            $this->error('删除失败，正在跳转', '/admin/Show/index');
        }

//        return json(['code' => 200, 'msg' => 'success', 'data' => 'delete']);
    }
}
